#ifndef main_hpp
#define main_hpp

#include <allegro.h>
#include <string>

//struktura punktu
struct sPoint
{
    float x, y;

    sPoint(float xx, float yy) {x = xx; y = yy;}
    sPoint operator +(sPoint p) {return sPoint(x + p.x, y + p.y);}
    sPoint operator +(int p) {return sPoint(x + p, y + p);}
    sPoint operator *(int p) {return sPoint(x * p, y * p);}
    sPoint operator /(int p) {return sPoint((int)(x / p), (int)(y / p));}
    bool operator ==(sPoint p) {return x == p.x && y == p.y;}
    bool operator !=(sPoint p) {return x != p.x || y != p.y;}
};

//sąsiedzctwo moora do wyszukiwania drogi (wszystkie komorki sasiadujące z inną względem jej pozycji)
const sPoint MOOR[8] = {sPoint(0, -1), sPoint(1, 0), sPoint(0, 1), sPoint(-1, 0), sPoint(-1, -1), sPoint(1, -1), sPoint(1, 1), sPoint(-1, 1)};

//rozmiar kafla
const int TILE_SIZE = 30;

//max liczba kaltek (7 klatek, bo +1, bo jest też klatka 0) zeby animacje były "realistyczne"
const int MAX_FRAME = 6;

//liczba sprawdzanych klawiszow
//const int KEYS_COUNT = 39;

/* te funkcje z maina */
void colorToColor(BITMAP * &b, int col1, int col2);
float ator(float angle);
float rtoa(float radian);
float disBetweenPoint(float x1, float y1, float x2, float y2);
float countAngle(float x, float y);
void repairName(std::string &name);
void drawGame();

#endif

//JAK NARAZIE 1405 LINII, MAŁO :(
